


The Cake is a Lie

by Dormchi



Category: Overwatch (Video Game)
Genre: Alternate Universe - Modern Setting, Amélie is Amélie, Domestic Fluff, First Meeting, First Time, Frottage, M/M, McHanzo on the Side, Oral Sex, Porn With Plot, Smuff, Teeny Tiny Bit of Implied McReyes
Language: English
Status: Completed
Published: 2019-02-11
Updated: 2019-02-11
Packaged: 2019-10-26 08:04:27
Rating: Explicit
Warnings: No Archive Warnings Apply
Chapters: 1
Words: 11,333
Publisher: archiveofourown.org
Story URL: https://archiveofourown.org/works/17742104
Author URL: https://archiveofourown.org/users/Dormchi/pseuds/Dormchi
Summary: “It’s Jack’s birthday today, you know,” Amélie says suddenly, folding her hands primly in her lap.“You made him move your crap on his birthday?” He doesn’t know why he’s surprised -- of course she did.“I didn’t make him, he offered.”“Somehow I really doubt that.”Amélie smiles. “All I’m saying is, if you like him so much, you should buy him a birthday cake.”Gabe bakes Jack a birthday cake, which goes about as well as you'd expect.





	The Cake is a Lie

**Author's Note:**

  * For [Ilyasviel](https://archiveofourown.org/users/Ilyasviel/gifts).



> This is a gift for a wonderful friend of mine, Ilya. <3
> 
> So basically this is all very domestic and fluffy. There's a McHanzo AU idea that spawned from this, too, that ties directly into this story. I know, I'm the worst about sequels and spin-offs. But they're coming, I promise. I just have a lot of things I want to write and not a lot of time to write them. >.>
> 
> Thank you to [Captain](https://archiveofourown.org/users/CaptainNeedsNoSleep/works), who is the best cheerleader I could ask for. <3 And a special thanks to another friend of mine, Grackle, who helped me figure out where the fuck I was going with the plot of this.
> 
> In this, Gabe, Jack, and Amélie are around 23-24, Jesse and Hanzo are 25-26.

Getting evicted from his apartment is probably the lowest point of Gabe’s adult life so far.

 

To be fair, there are a few contenders that come to mind, like the time he got stung on his cheek by a wasp and his face swelled up like a balloon, or the time he got chlamydia in freshman year of college from his girlfriend after she slept her way through all the members of an indie band. Lucky for him, the swelling went away eventually and chlamydia is totally 100% curable. Being suddenly, inexplicably homeless seems a lot worse in comparison.

 

He was reaching for his keys to unlock the door when he noticed it -- a piece of pink paper, an assault on his eyes really, with his eviction spelled out in no uncertain terms. According to that piece of paper, he has three days to evacuate the premises for nonpayment of rent, which is absolute bullshit because he paid his rent _on time_ this month, last month and the month before. It’s not like he’s a goddamn saint that’s never made a late payment, but he’s been putting in a bunch of overtime hours and picking up extra shifts just to be able to pay rent on time and eat. He’s been _trying_.

 

He’s standing there, staring at it in complete disbelief, when the door of the apartment next to his opens and Gabe’s tattoo artist neighbor pokes his head out. “You get one too?” he asks in a slow drawl, unlit cigar hanging precariously between his lips.

 

“Yeah. Fuck. Who else got one?”

 

“Pretty sure everyone did,” McCree says with a lopsided shrug. “They all say one thing or another. Figure they’re sellin’ this place so some big company can build a new office building, so they’re coming up with any excuse to get people out quick.”

 

What a great thing to come home to, after surviving an incredibly rough day at work. He pulled just shy of a triple shift to make sure their breakfast, lunch, and dinner rush were all covered, and by the end of it he basically wanted to die. He’s exhausted and still covered in grease and sweat and the other miscellaneous grossness that accumulates on his clothes from working in a kitchen. All he wanted was a hot shower and a cold beer, and to jack off in relative peace before passing the fuck out. He didn’t think he was asking for much.

 

“They can’t just kick everyone out of their homes for bullshit reasons,” Gabe says, just a tiny bit of hysteria slipping into his voice. He looks at the eviction notice, then back to McCree, who seems as calm and unperturbed as always. “This is illegal or some shit, isn’t it?”

 

“Well yeah, but you think anyone livin’ in this buildin’ has the money or resources to sue? My guess is that a bunch of them will stay until the police drag them out because they literally have nowhere else to go, but a lot of them will leave, too.”

 

 _Great._ This is really the last fucking thing he needs to deal with right now. Gabe scrubs a hand over his face and sighs. “You don’t seem bothered by this at all.”

 

“Things don’t always work out, but they always work out the way they're s'posed to. What’s the point in worryin’?” McCree says, turning his attention towards something inside the apartment. Gabe wonders if it’s his eyes playing tricks on him after such a long day, but he swears he sees McCree’s cheeks turn a little red.

 

A few moments later, a man with long black hair tied up in a high ponytail emerges and stands directly in front of McCree. He’s several inches shorter than McCree is, so he has to stand on his tiptoes when he kisses the other man. It’s a chaste, brief thing, and when they pull apart McCree has a goofy grin on his face. “Leavin’ already, sweet thing?”

 

“I have to open the store tomorrow.”

 

“You sure you don’t want a ride home?”

 

Gabe watches the exchange with wide eyes. He had no idea that McCree was seeing someone, or that he’s into guys, apparently. Beyond the casual interactions they’ve had over the last six months, he never thought to try to get to know him. He supposes he’s been kind of an antisocial asshole.

 

“I prefer walking. It’s not very far and the weather is nice.”

 

“Well alright, darlin’. Someday I’ll convince you to let me spoil you a little,” McCree cups the other man’s face in his hands and leans down, kissing him soundly on the mouth. “Text me when you get home so I know you’re safe.”

 

The man doesn’t say anything, just kisses McCree again, pauses for what Gabe assumes is a meaningful look, and turns to walk down the hallway. He affords Gabe a brief, sharp glare as he passes by, then disappears into the stairwell. Gabe wonders absently if McCree knows that his guest stole his cigar and if he should say anything, but ultimately decides against it.

 

After he’s sure that the other man is gone, Gabe opens his mouth to ask something, but his brain is having a hard time deciding what he should ask first. McCree breaks the silence for him.

 

“I’m technically not supposed to sleep with clients, but,” McCree pauses and sucks in air through his teeth and then exhales noisily, “goddamn.”

 

“I get it. You know, I didn’t even know that you, uh…”

 

“That I bat for the other team?” McCree asks good-naturedly, a smile creeping onto his face.

 

Gabe scratches at the back of his neck. “So to speak.”

 

“I mean, I thought it was kind of obvious. I tried to catch your attention pretty hard when you first moved in,” McCree explains. Gabe stares at him, mouth slightly agape, and McCree holds up his hands in surrender. “M’sorry Gabe, I thought you knew. I tried askin’ you over for drinks a few times and you always said you were tired or busy, so I assumed what you really meant was that you’re straight or not interested. I stopped askin’ after that, because I’m not an asshole.”

 

Gabe wracks his brain for a few moments, trying to pin down any of his interactions with McCree that might have seemed like flirting. He’s immensely frustrated when he can’t think of any. Has he really been so busy and overworked that he completely missed the signs of someone coming onto him? What happened to him? He used to be really good at this type of shit.

 

There’s no point in worrying about it now. McCree already has someone, a very hot, mean-looking someone, and Gabe has no interest in trying to be a homewrecker. Not like McCree would have any reason to give him a chance to be one. He doesn’t deserve a chance after he was so goddamn oblivious. “Hey, it’s all good,” he says with a wry smile. “You two look good together, I hope it works out.”

 

“Thanks, Gabe. I appreciate that.” McCree nods at him and turns to go back inside. Gabe stares after him, and a thought crosses his mind.

 

“Hey, what are you getting evicted for?” he calls out, hoping he catches McCree before he closes the door.

 

“Excessive noise,” McCree says loudly from out of sight, and Gabe can hear the grin in his voice, loud and unrepentant.

 

Gabe rolls his eyes and heads inside his apartment.

 

\--

 

Gabe doesn’t sleep well that night, and he wakes up tired and irritable. He rolls out of bed and goes through his morning routine around noon, grateful to have the day off to figure things out. Totally worth working a triple shift, even if he’s sore all over now -- nothing that a quick, hot shower and a cup of coffee won’t help him ignore.

 

Once he feels a little more human, he heads for the kitchen, starts a pot of coffee, and rummages around in his fridge for food to make. He didn’t have a chance to go grocery shopping, which means there’s not much left besides a half gallon of milk, miscellaneous condiments, and some leftovers with a questionable expiration date. At least he doesn’t have to worry about wasting any food when he has to move in 3 days. He guzzles the last of the milk, then slams the door to the fridge harder than he means to and grabs his phone, figuring he doesn’t have any more excuses to not make the one phone call he needs to. He’d thought a lot about his options last night when he was rolling around in bed wide awake, and there really aren’t many available to him. He’s hoping that the best of his options will come through for him, even though he hasn’t talked to her in a little over 6 months.

 

He hates this feeling of relying on someone else for help, but he’s not sure what other choice he has. His _abuelita_ was the last family he had and she’s gone now, and he sure as hell doesn’t have the money for a down payment on a new apartment. He would, if he hadn’t paid his rent on time.

 

“Motherfuckers,” Gabe sighs, finding the name he needs in his contacts and pressing it.

 

The phone rings a few times, long enough that Gabe is worried she might not be awake yet. She bartends a few nights a week, but he has no idea what her schedule might be these days. Finally, when it’s on the verge of going to voicemail, the phone picks up and she says sleepily, “Oui?”

 

“Amélie, hey. I need a huge favor.”

 

“... No.”

 

_Click._

 

Gabe plops down onto the couch and redials, largely unphased. He expected a string of French curse words before she hung up, so this is kind of a pleasant surprise, if he’s being honest. Amélie lets it ring three times before she picks up again.

 

“I can’t believe you actually hung up on me,” Gabe huffs, kicking his bare feet up on the coffee table. He’s lying, of course -- he can absolutely believe it. “Me. Your best friend since middle school.”

 

“Of course I hung up on you, Gabriel,” Amélie sighs. There’s some rustling in the background before she speaks again. “I worked until 3 this morning, and you interrupted my precious beauty rest.”

 

“Hey, it’s not like I knew you were asleep.”

 

“You should understand better than anyone the need to sleep until mid-afternoon. Now, why are you calling me?”

 

Gabe rubs his hand over his chin and realizes then that he forgot to pour himself a cup of coffee. He also drank all of the milk. Fuck. “I need your help,” he admits, resisting the urge to slump over onto the couch and bury his face in a pillow. The time for the pity party was last night when he was so frustrated over getting an eviction notice and being screwed over by life in general that he couldn’t even come up with any mental images worthy of getting hard for. He was even too tired and bummed out to grab his phone to search for porn.

 

That sad guy was the Gabriel Reyes of yesterday. Today he has to figure out what the fuck he’s going to do to survive.

 

“You’re doing that thing, Gabriel.”

 

“What thing?” Gabe asks, opening his eyes. He doesn’t know when he closed them.

 

“Where you say something and then drift off into your own little world without elaborating, like I’m supposed to guess the next part.” He can hear the sounds of her brushing her teeth, followed by a garbled, “What do you need?” and a loud spitting noise, then running water.

 

 _Here goes nothing_. “I came home last night and there was an eviction notice on my door. I need a place to stay because I apparently have to be out of here in 3 days.”

 

There are a few moments of silence, then Amélie makes a noise of understanding. “Fair enough.”

 

Gabe waits, knowing that this is the part where Amélie makes him suffer. She already knows what her answer is going to be, but he has to listen to her go through the rest of her morning routine before she’ll grace him with it.

 

“How fast can you come over?”

 

“20 minutes?”

 

“Good. We’re going to get food.”

 

Gabe’s stomach makes a horrible rumbling noise in response, and he’d honestly be shocked if Amélie couldn’t hear it through the phone. “Yeah,” he agrees, “I’ll be there soon. Don’t leave without me.”

 

“20 minutes, Gabe,” she says, her voice equal parts threatening and pleasant, before she hangs up.

 

Gabe heaves a sigh of relief and tucks his phone into the pocket of his sweatpants. So far, so good. If Amélie was going to outright tell him no, she would’ve told him and been done with it. Just because they haven’t seen each other or spoken much in the 6 months since his _abuelita_ died, she’s still just as good of a friend to him, in her own way.

 

As he gets up from the couch and goes to get dressed, his heart feels a little lighter. Maybe McCree had a point -- things always seem to work out the way they’re supposed to.

 

\--

 

They hash out the terms of Gabe being Amélie’s roommate over a spread of a dozen fish tacos and two bottomless margaritas. The timing works out kind of perfect -- Amélie’s last boyfriend broke up with her three weeks prior, said she was _too cold_ (Gabe laughed at that. “No, too cold? You?”) and moved to Seattle to pursue his dream of being the next founder of an Apple-like startup by day and fronting a grunge band by night.

 

One of the first pain points comes when Gabe insists on paying rent. Amélie is a trust fund baby who has very little concept of how much things are actually worth. The generous distribution she gets from the trust each month covers the rent on her expensive apartment and keeps her expensive taste satisfied.

 

“I don’t see why you won’t just accept my help,” she huffs, taking a short sip of her margarita. “You paying rent is unnecessary.”

 

“I don’t do handouts,” Gabe says around a mouthful of fish taco. Amélie looks at him with a raised brow, clearly disgusted. “What?” It’s the truth. He can’t accept handouts from anyone for any reason, not after how hard he worked to get this far in life. It’s just not who he is, even if Amélie doesn’t see it like he does.

 

“If you insist. But you will decide what is acceptable to pay for rent and you will let me pay for the groceries--” Amélie holds up her hand to stop Gabe from interrupting, “ _because_ I expect you to cook for me. That’s a fair trade, is it not?”

 

Gabe blinks at her, the same bizarre feeling creeping over him that usually does when he has to bargain against Amélie’s complete lack of realism as far as the cost of things goes. In this case, though, it’s probably fair enough that he can let it go. He really enjoys cooking, after all, even after doing it all day for a living.

 

“Fine. You can pay, but I’ll do all the grocery shopping and cooking.”

 

This point she agrees to without a fight, and they catch up for a while as they work their way through the remaining tacos. Gabe is three margaritas deep and feeling great about life until he notices Amélie pull out her phone and start texting someone. It could be completely innocent or unrelated to him, but he feels suddenly like there’s one more rule they need to lay down now. One directly related to Amélie’s desire to play matchmaker.

 

“Hey,” he says to catch her attention. Amélie quirks a brow but doesn’t look up at him until she finishes her text. “No more trying to set me up with random people that you know, okay? I don’t need help finding someone. Not after the first couple times went so badly.”

 

Amélie smirks and puts her elbow on the table and her chin in her hand. “I was only trying to help you forget your past loves, Gabe.” Gabe can tell the next thing out of her mouth is going to be painfully honest, but there’s nothing he can really do the stop her. Amélie says what she wants to, when she wants to. “Like the girl who gave you chlamydia or that guy who gave terrible head but made the best cookies you’ve ever had.”

 

“Cool, I remember them even more now. Thanks for that.”

 

Amélie waves off his complaint. “I’m only texting my coworker,” she explains, locking her phone and setting it off to the side. “He’s going to help us move things into storage from the second bedroom and help move your belongings to my apartment. He owes me a favor.”

 

Gabe polishes off the last of his margarita, tempted to ask the waiter for a fourth refill, but decides it’s probably not a great idea to get drunk mid-afternoon. He’s going to have a lot of packing and cleaning to do after this, while he has the free time. Last thing he needs is for something important to get thrown away. “Why not just hire movers?” he asks, honestly curious.

 

“I could hire movers, but I like making my coworkers who owe me favors repay me in difficult ways. It’s entertaining.”

 

“Jesus,” Gabe says. “Remind me to never owe you anything.”

 

“Oh, Gabriel. You already do.” Amélie sips at her margarita and smiles mercurially at him. “But don’t worry. You can repay me one delicious home-cooked meal at a time.”

 

\--

 

Gabe works an early morning shift the next day. Afterward, he packs up all of his worldly possessions, which is a bigger pain in the ass than he expected. He figured he couldn’t have that much stuff, considering he’s a bachelor that’s only been living alone for half a year, but somehow he managed to accumulate a ton of random crap he doesn’t remember buying or receiving.

 

McCree catches him at one point when his front door is propped open and they exchange phone numbers amicably. He even sticks around to help Gabe get everything stacked and ready to move.

 

“How’re you gonna move all this?” McCree asks after they’ve finished for the most part, and he lights up a cigar right there in the bedroom. Gabe told him to do whatever he wants, since he doesn’t give two fucks about taking any non-smoking rule in this shithole apartment serious anymore, but this is the first time that McCree has taken him up on the offer.

 

“They rent those trucks by the hour,” Gabe says, using a towel to mop up sweat from the back of his neck. “Figured I’d get one of those.”

 

McCree hums thoughtfully. “Y’know I own a truck, and I don’t mind helpin’ you out.”

 

“Not a good idea. My new roommate will put you to work helping her move her stuff into storage as soon as she sees you.”

 

McCree shrugs with one shoulder and blows a cloud of smoke towards the boxes. “I really don’t mind,” he says. “I’m off for the next two days and I’m kind of worried I’m gonna go stir-crazy.”

 

“Don’t you have to move your stuff too?” Gabe asks, brow furrowed.

 

“Well, y’know. I thought I had somewhere to go, but it turns out that wasn’t the case. Looks like I’m gonna be one of those folks who stay.”

 

There’s a pained look on McCree’s face as he speaks, and though it’s gone after a few seconds, something in Gabe’s chest aches with sympathy. He wonders if it has something to do with the guy McCree had over at his apartment the other night, but he doesn’t ask. They just barely started talking regularly, the last thing he wants to do is push too hard and chase away someone who he just got sort-of friendly with.

 

“You sure you’re available?” Gabe asks. “I don’t want to take up your whole afternoon if you have other plans.”

 

“I’m 100% sure,” McCree says easily, smiling as he rolls up the sleeves on his flannel shirt, revealing two forearms covered in tattoos. “Where do you wanna start?”

 

\--

 

It takes a few hours to fully load up Jesse’s truck, and by the time they’re ready to leave they have to fight several moving trucks to get out of the parking lot. Amélie’s apartment isn’t too far from his, just a few miles closer to the “nice” part of town. McCree strikes up a conversation about their jobs during the drive and Gabe is pleasantly surprised to find that it’s easy to keep it going. He really missed out on some easy conversation by ignoring McCree for six months.

 

They order lunch from a drive-thru on the way, because he highly doubts Amélie has anything decent to eat in her apartment. He’s going to fix that after he’s done moving in. No best friend of his is going to eat takeout every night.

 

“Take a right here,” Gabe says, stopping McCree from bypassing the turn into the complex. McCree turns sharply, pulls up to the gate and enters the code that Gabe gives him.

 

“Sorry, had a lot on my mind. Where’s her apartment at?”

 

“Follow this all the way back and make a left at the end. It’s the first one on the end, second floor.”

 

“Of course it’s on the second floor,” McCree sighs, following his instructions. Gabe points it out as they get close. They park in guest parking not too far away and Amélie comes out to meet them, sticking her hand through the open window for McCree to shake as Gabe climbs out.

 

“Amélie Guillard.”

 

“Jesse McCree. Most folks just call me McCree.”

 

“Gabriel didn’t tell me he was bringing a friend,” she says, eyeing Gabe strangely over the top of the truck. Gabe stares back at her, trying to not seem as confused as he feels.

 

“Well he didn’t really know I was comin’ until I volunteered earlier,” McCree replies cheerfully, apparently immune to the strange atmosphere. He waits for Amélie to move and then gets out of the truck as well. “Gabe and I are just neighbors. We didn’t even talk that much until a few days ago.”

 

“I see.” Amélie crooks her finger at Gabe and makes a _come hither_ motion. “May I borrow you for a moment, Gabriel?”

 

Oh no. That’s never a good sign when Amélie throws around his full name. Gabe sighs and follows after her, leaving McCree to start unloading the truck. They don’t even go that far, just a few cars down.

 

“What?” he asks in a harsh whisper when they stop.

 

Amélie frowns at him, and whispers back, “Why didn’t you tell me you were with someone?” Before he has the chance to answer, she reaches out and pinches his nipple hard through his shirt, making him jump and curse.

 

“Ow, fuck! With someone? You mean McCree?”

 

“Yes, obviously!”

 

“He’s my neighbor, that’s all!” Gabe hisses, rubbing his sore nipple through his shirt. “We just barely started talking. Besides, he’s seeing someone.”

 

Amélie stares at him for a few long moments, hand poised to pinch him again, and Gabe covers his chest with his hands defensively. He doesn’t know what he did to deserve being attacked in broad daylight like this.

 

“Hey uh, which apartment is yours again?” McCree calls out, interrupting them at the perfect time.

 

“Top left,” Gabe shouts as he walks out from behind the cars.

 

McCree eyes him with an amused smile. “Everythin’ alright there, Gabe?”

 

It’s then that Gabe realizes he’s still holding his hands over his chest. He grumbles and drops them as he walks over. “Everything is fucking peachy. Grab whatever you can and let’s get this rolling.”

 

They take two heavy boxes each, figuring that starting out with the heavy stuff while they’re not too tired is the best plan. Amélie leads the way up the stairs and to the door, and she holds it open for them, which is surprising, but Gabe doesn’t call her out on it. He’s still a little pissed about his nipple getting attacked when he didn’t even do anything to deserve it.

 

The inside of Amélie’s apartment is huge -- twice the size of Gabe’s, with vaulted ceilings that make it seem even bigger. There’s not much going on in the living room, save for two black couches, a coffee table, and a huge flat screen TV, but Gabriel knows better. The closets are where Amélie hides all of her impulse buys.

 

“Just set everything here in the living room, off to the side,” she instructs. “Jack is already helping me pull apart the second bedroom.”

 

 _Jack_ must be Amélie’s coworker, Gabe assumes, and he doubts that Jack is _helping_ her do anything, so much as he’s probably doing it all himself. He feels a little bad for the guy already, since he’s apparently doing this to pay Amélie back and most likely had no idea what he was getting himself into.

 

“I’ll go see how close he is,” Gabe says as he stacks his box on top of the one McCree was carrying.

 

McCree runs his hand through his hair and nods. “I’ll keep goin’. There are only a few more heavy ones.”

 

Gabe has been to Amélie’s apartment plenty of times, even crashed here a few times after an all-nighter, so he already knows which direction to go to find the second bedroom. He decides that he’s going to just poke his head in and see if Jack needs anything, then get back to helping McCree. He feels like shit for having his neighbor unload boxes while he’s doing nothing to help, but he also doesn’t want Amélie’s poor coworker to suffer.

 

“Hey, did you need any--”

 

_Help?_

 

Jack lifts his head from the box he’d been writing on in permanent marker, and Gabe’s brain short-circuits a little as it tries to process what he’s seeing.

 

“Gabe, right?” Jack asks as he stands up, the corner of his mouth twitching up into a smile. He’s tall, almost as tall as Gabriel, with sharp, bright blue eyes and a lean, muscular body that looks like he works out regularly. There’s an easy friendliness about him, a touch of cockiness maybe, as he stands there with one hand on his hip and waits for Gabe to respond.

 

 _He’s_ _gorgeous_ , Gabe thinks, even more so when he takes a little too long to answer and Jack’s smile splits into a grin, bright and beautiful like the sun shining through parted clouds.

 

Oh, Gabe is so fucked.

 

“Gabe? Are you alright?”

 

“Huh? Yeah, I’m great.”

 

“I can see that,” Jack laughs, gesturing towards the piles of boxes surrounding him. “I’m almost done in here. You wouldn’t believe how many clothes I pulled out of that closet.”

 

Jack points at the walk-in to make his point. Gabe somehow manages to tear his eyes away from Jack so he can look into the closet, and for that, he’s a little proud of himself. It’s entirely gutted now, except for a couple stray clothes hangers and a few boxes of shoes.

 

Gabe shakes his head as he looks from the closet to the number of boxes surrounding Jack. “Jesus.”

 

“She had clothes in there with the tags still on them.” Jack pauses and hums thoughtfully. “Most of them, actually.”

 

“I can help you carry this stuff out of here if you want,” Gabe offers, knowing very well that he’s abandoning McCree to deal with carrying all of his heavy shit. He’ll do something nice to make it up to him, he swears.

 

Jack smiles and shakes his head. “Nah, I’m alright. You probably have boxes to bring in, right?”

 

“Yeah… definitely.”

 

“Then hop to it, soldier.”

 

 _God_ , Gabe is so incredibly fucked.

 

As he forces himself to turn and leave the room, he runs into Amélie, who is standing just outside. She raises a delicate eyebrow in question, because everything Gabe is feeling is no doubt shining on his face like a neon sign. Knowing her, she probably did this on purpose. Gabe can’t even be that pissed about it.

 

“Later,” he mouths quietly, and heads out the door to help McCree.

 

\--

 

It takes just under two hours to move all of Gabe’s things into Amélie’s spare bedroom after it’s cleaned out. He might have a bunch of knick-knacks and other shit he doesn’t remember buying, but he’d never really bought any furniture besides a bed, a futon he used as a couch, and a TV. The heavy boxes were the worst of it, filled with cookware and kitchen gadgets, but those he definitely needs. Amélie barely has a full set of silverware to her name, which is not conducive to his need to cook.

 

Jack moves all of Amélie’s boxes out to his truck without complaint, still able to flash that golden smile at Gabe even when his arms are stacked with boxes. It’s unfair, really, for someone to look so gorgeous and distracting. They work in tandem to load up Jack’s truck, and McCree offers to go with Jack to unload the boxes into a storage unit.

 

When Gabe offers to come along to help, Amélie interrupts with a short, “Gabe has to stay. I need his help with something.”

 

Which is how he ends up flopping himself down next to her on the couch, staring up at the ceiling after Jack and McCree leave. Amélie seems completely unaffected, continuing to read her book like nothing is wrong in the universe.

 

“Why do you torture me like this?” Gabe asks.

 

“Like what?”

 

“You know what. Do I really need to say it out loud?”

 

“Mm, wait.” Amélie hums and carefully bookmarks her place, lays the book in her lap, and wedges her bare feet underneath his thigh. She reminds him of a cold-blooded thing, using him for warmth. “Now you may speak.”

 

“Do you remember that time I called you and had a bisexual crisis because my tattoo artist neighbor was really attractive?”

 

“I remember it well. I had to scrape you off of the ceiling, and it was the last time we spoke for months.” She gives him a considering look. “Is McCree the tattoo artist neighbor you were talking about?”

 

Gabe scrubs his hand over his beard. “Yeah. And this is like that, but worse. A thousand times worse.”

 

“Hmm, McCree is cute, yes.” Amélie digs her feet further under his leg and resettles. “A little too committed to that cowboy aesthetic maybe, but cute.”

 

“McCree already has someone. Besides, it’s not him I’m having a crisis over right now,” Gabe sighs. No, he’s not having a crisis over McCree at all, even now that he knows that something could have come of it if he’d just been more aware. McCree looked like he was genuinely happy with the guy at his apartment, even if it seems like something bad happened between them recently.

 

Gabe doesn’t want to ruin that -- he wants something like that. He wants someone to look at him like McCree looked at his mystery guy, like they were the only two people that mattered in the whole world.

 

He’s really becoming a sappy romantic fuck these days.

 

“It’s Jack’s birthday today, you know,” Amélie says suddenly, folding her hands primly in her lap.

 

“You made him move your crap on his birthday?” He doesn’t know why he’s surprised -- _of course_ she did.

 

“I didn’t make him, he offered.”

 

“Somehow I really doubt that.”

 

Amélie smiles. “All I’m saying is, if you like him so much, you should buy him a birthday cake.”

 

Gabe raises an eyebrow at her. “Ok, now I’m offended. I bake just as well as I cook, and I cook pretty fucking well _for a living_. Why in the hell would I buy him a cake?”

 

“Because they’ll most likely be back in an hour and you can’t make it to the store to buy ingredients, bake a cake, and surprise him with it before then.”

 

That sounds like a challenge if Gabe has ever heard one, but he’s not going to give in that easily. “Who says I want to surprise him?” he asks, just because he wants to be stubborn.

 

Amélie levels a look at Gabe that says he’s well beyond caught at this point. He thinks about asking her if she asked Jack to help on purpose, as a thinly veiled attempt at setting him up with someone without _actually_ setting him up, but he decides he’d rather not know. Whether she did or not, Gabe is definitely going to surprise Jack with a birthday cake.

 

After that, maybe he’ll ask him out on a date.

 

\--

 

The grocery store that Amélie recommends is two blocks down the street. It is, of course, a hell of a lot fancier than a normal grocery store and full of more vegan substitutes than Gabriel has ever seen in his life, but they still have plenty of familiar non-vegan ingredients. Thank fuck for that. He doesn’t have the time to rework his recipe to fit ingredients he’s never worked with before.

 

He grabs some necessary items on the outer edges of the store, then heads to the one aisle that should have everything else. As he walks through the baking aisle collecting the things he’ll need, a very familiar someone enters the aisle from the opposite end. It takes all of a second for Gabe to recognize who it is.

 

McCree’s mystery man looks just as put together as he did the other day, eye makeup applied impeccably well and long black hair pulled up into a high ponytail. He has a piece of paper in one hand and his phone in the other, and he comes to a stop in front of the flour, which is, naturally, the last thing that Gabe needs.

 

He waits for a bit to see if the guy will get what he needs and move on, but it becomes clear from the frown and the furrow of his eyebrows that he’s either not seeing what he needs or he doesn’t understand what he’s looking at. Since Gabe is short on time, he sidles up next to the guy, reaches over him to grab the bag of flour that he needs and asks, “Need help finding something?”

 

The guy tilts his head up to look at Gabriel, sharp brown eyes narrowed first in irritation at being spoken to and then widening just slightly in recognition. “Oh,” he says, clearly unimpressed. “It’s you.”

 

Gabe bites back a laugh. That’s a better response than he was expecting. “Name’s Gabriel.”

 

“Hm. Hanzo.”

 

Hanzo turns his attention back towards the flour, then looks down at the list in his hand, then back again. Gabe catches a quick glimpse of it. On the paper, scribbled haphazardly, are what looks like the ingredients and measurements of said ingredients for a cake. There’s what looks like Japanese written in the margins.

 

“So… you bake?” Gabe asks.

 

Hanzo shakes his head. “No.” Gabe watches him for a second, eyebrow raised, before Hanzo continues, “But my brother suggested it. Apparently, home baked goods are a good way to apologize.”

 

Well, that confirms that Hanzo and McCree definitely had a fight. While he doesn’t know either of them well enough to offer any advice, he knows good intentions when he sees them. He also knows that good intentions aren’t going to magically make Hanzo good at baking, especially when he can’t even seem to decide what kind of flour he needs.

 

 _Don’t say I never did anything for you, McCree,_ Gabe thinks.

 

“Come on,” Gabe says as he drops the bag of flour into his basket. “The bakery here probably has some gourmet cakes topped with organic fruit or some shit.”

 

Hanzo makes a considering sound, maybe weighing the pros and cons of buying a cake versus trying to bake one, then folds the piece of paper and stuffs it into the back pocket of his jeans. He follows Gabe to the bakery in silence, and they stand in front of the display case. It’s filled with cakes of several different kinds. Surprisingly, only half of them are topped with organic fruit.

 

Gabe doesn’t miss the way that Hanzo leans close to the display, fingers hovering over the glass that covers each cake he looks at. If Gabe had to guess, he’d say McCree has a boyfriend with a sweet tooth. One who apparently doesn’t know how to bake.

 

“I don’t know what he likes,” Hanzo admits quietly.

 

“You can’t really go wrong with cake, in my opinion.”

 

That’s not entirely true. If Gabe ever bakes a German Chocolate Cake for Amélie again, their friendship might actually come to an end. McCree doesn’t seem like the picky type, though. He’d probably even eat a burnt lump of cake-like substance and tell Hanzo it’s the best thing he’s ever tasted.

 

The young girl behind the counter comes over to see if they need help and Hanzo points to a chocolate cake, which Gabe silently agrees is a good, safe choice. While the worker is boxing it up, he notices that Hanzo is looking intently at a smaller cake in the back row, one with white frosting and sliced strawberries on top. Beneath it, the label proudly declares that the strawberries are, in fact, organic. Thank god.

 

“It might not be a bad idea to get two, since you don’t know what flavor he likes.”

 

Hanzo actually honest-to-god smiles at him, catching Gabe off-guard, and points to the other cake after he catches the worker’s attention. “Perhaps two cakes, then. Thank you, Gabriel.”

 

“No problem.” Gabe pulls his phone out of his pocket and checks the time. He really didn’t have time for this little detour, but he also couldn’t let McCree be subjected to eating bad cake if he could help it. “I’ve gotta run, but if you want to give the cake to McCree personally, I know where he’ll be.”

 

Hanzo takes the two cake boxes from the girl behind the counter into his arms, cradling them protectively, and looks at Gabe like he’s not sure whether he should take him up on that offer or not. Gabe can’t blame him -- there really is no perfect time to try to apologize.

 

“I’m pretty sure he’d be really happy to see you,” Gabe offers. “He’s been doing manual labor all day.”

 

There are a few more moments of indecision, then Hanzo nods. “Very well. Where and when can I find him?”

 

\--

 

Once he’s back in the apartment and his famous Guinness Cake is safely baking in the oven, Gabe sets a timer and then finally allows himself a minute to breathe. As he flops down onto the couch, though, he spots Amélie peeking through the curtains in the living room. She’s not moving, just standing still and staring creepily out the window.

 

He’s not interested in whatever has her so fascinated, he decides. He’s not. He just wants to lie here and relax.

 

“What are you doing?” Gabe asks, when he can’t take the curiosity anymore.

 

Amélie looks over her shoulder at him. “Watching your tattoo artist friend.”

 

Gabe blinks at her. When he’d come back from the store, he almost had a heart attack when he saw Jesse was back, but apparently, Jack just dropped him off and went to go take care of something. The surprise cake is still right on schedule, as long as Jack actually comes back. He really wouldn’t blame him if he doesn’t, although eating cake alone and jerking off isn’t particularly how he wants this day to end.

 

“Okay, I’ll bite,” he sighs. “Why?”

 

“He just got a phone call. It seems to be a very important one, judging by the way he’s pacing back and forth in the parking lot.”

 

“Move over.”

 

She doesn’t move much, which leads to Gabe leaning over awkwardly beside her. McCree is pacing outside in the parking lot, phone pressed against his ear, but Gabe can’t get a good enough look at his face to tell how the conversation is going. He assumes that it has to be Hanzo, considering their encounter earlier in the grocery store. Maybe Hanzo called McCree first to make sure it’s alright with him that he comes by.

 

“Do you know who he’s talking to?” Amélie asks, whispering for whatever reason.

 

“I think he’s talking to his… boyfriend?” Gabe realizes then that he’s not really sure if McCree and Hanzo are together like that or if it’s just a casual thing. McCree referred to Hanzo as his client, but that doesn’t mean they aren’t together, necessarily. It seemed like a rude thing to ask someone after just making friends with them, so he didn’t.

 

“What makes you so sure?”

 

“I ran into his boyfriend Hanzo at the grocery store. He was going to buy the ingredients to bake an apology cake.”

 

“Going to?” Amélie looks at him questioningly.

 

“He can’t bake,” Gabe explains, and Amélie makes a noise of understanding that he can only assume means, ‘ _Ah yes, one of my people.’_ “I helped him pick out a premade cake from the bakery and told him where McCree would be.”

 

Amélie falls silent as McCree turns slightly. He’s definitely smiling, a soft, fond thing that makes Gabe feel like he’s intruding on something personal. He’s about to open his mouth to tell Amélie that they shouldn’t spy on him anymore when McCree lifts his gaze to the apartment, directly at the window where Amélie and Gabe are staring like creepers.

 

They both duck and let the curtain fall shut.

 

“This is stupid,” Gabe whispers and says it again louder when he realizes he’s whispering. “I’ve got half an hour until Jack’s cake is done. I’m going to take a 20-minute nap.”

 

“Should I wake you if Jack comes back in that time?” Amélie asks, smiling that annoyingly knowing smile of hers.

 

Gabe heads over to the couch, grabs one of the couch cushions, and flops down. “Please. If he doesn’t show up, the timer should wake me up.”

 

“Very well. I’ll keep your tattoo artist friend occupied until his beau gets here.”

 

She heads out the door before Gabe can protest. Silently, he apologizes to McCree for unleashing Amélie on him, and dozes off a few moments after.

 

\--

 

When Gabe wakes up, he doesn’t have any idea of what time it might be. He didn’t wake up on his own accord -- he woke up because of a horrible burning smell wafting into his nose and refusing to go the fuck away.

 

_Oh._

 

“Shit, shit, _shit!”_

 

Gabe launches himself off the couch and towards the kitchen, skidding to a stop on the wood floor in front of the stove. There’s smoke seeping out of the corners, wisps of it that betray the absolute fucking disaster taking place inside. He puts on an oven mitt and flings the door open, coughing as a cloud of smoke wafts out and into his face.

 

“Son of a bitch!” he sputters and coughs, waving the smoke away. As it starts to clear, he reaches in and grabs the cake pan. It’s a charred lump, completely beyond salvaging. Gabe drops it onto the stovetop and throws the oven mitt on the counter, staring at the burnt remains of Jack’s birthday cake in disbelief.

 

“Jesus, how long was I asleep?” Gabe wonders out loud. More importantly, why the fuck didn’t the timer wake him up? Or Amélie for that matter?

 

He takes a deep breath and shuts the door on the oven harder than he means to, then turns it off entirely. Just to test a theory, he sets a timer for a minute and lets it run down. Sure as shit, nothing happens when it hits zero. Amélie probably never uses it, so she wouldn’t even know if it was broken or not.

 

Gabe heads outside and leaves the door open to clear out the smell of smoke from the apartment. A quick glance at the parking lot reveals Amélie, Jesse, Hanzo, and Jack all standing around by Jesse’s truck, laughing and chatting with each other.

 

He’s happy that they’re all having fun, really.

 

Amélie must feel Gabe glaring daggers at the back of her head because she turns around as he approaches. She takes one look at him and frowns. “Someone woke up on the wrong side of the sofa.”

 

The others stop talking so they can look at him as well, including Jack, who looks just as stupidly attractive and put-together as he did before moving all of Amélie’s shit. How is that even fair?

 

Gabe smiles wryly. “Yeah, well, that someone almost burned down your apartment because you didn’t wake him up.”

 

“You burned the birthday cake?”

 

It’s not Amélie who said it -- it’s Jack. Gabe stares at him for a second, mouth agape, and then looks at Amélie with an expression that he hopes conveys the amount of _what the fuck_ he’s feeling right now.

 

“I’m not very good at keeping secrets,” Amélie says nonchalantly, like that’s any kind of explanation. Gabe knows that’s far from true, but doesn’t call her out on it, because there’s no point.

 

“Ok,” Gabe huffs and rubs his hand over his face. “Yeah, I did.”

 

“Whose birthday is it?” Hanzo asks, leaning into McCree’s side a little, in a way that seems very relieved. Apparently, they’ve made up, which gives Gabe some small sense of peace at least.

 

Jack is still looking at him with that same handsome smile on his face, for whatever reason. “It’s mine.”

 

Hanzo stands on his tiptoes and cups his hand over McCree’s ear, whispering something into it. When he’s done, he looks directly at Gabe, his expression unreadable.

 

“Happy birthday, Jack,” McCree says, grinning and clapping him on the shoulder. “We just met and all, but if you wanna get up to some drinkin’ tonight, let me know. Maybe Gabe and Amélie will join us.”

 

McCree and Jack start talking about options for going out, Hanzo makes a small gesture at Gabe and moves away from the group. Assuming he’s meant to follow, Gabe does, until they’re standing beside a car out of earshot of the others. It becomes apparent when Hanzo unlocks the car and opens the door that this is his car.

 

“You should take the chocolate cake,” he says, gesturing at the two cake boxes in the back seat. “For Jack.”

 

Gabe stares for a second, a little stunned. Hanzo gives him an impatient look in return, and Gabe reaches into the back seat, grabbing the pink box marked with ‘chocolate’ on the top. He’s really damn glad that he helped Hanzo when he did -- now celebrating Jack’s birthday won’t be a complete failure.

 

“You sure about this, Hanzo?” he asks, carefully holding the cake box in his arms. “You did get both of these for McCree.”

 

Hanzo _smiles_ at him, which Gabe still isn’t used to at all. “You saved me, and McCree, from the certain disaster of my own cooking. It is the least I can do.”

 

“Shit, well. Thanks.”

 

“My pleasure,” Hanzo says, his smile fading a little into that familiar sharp look. “Are you actually wanting to come out tonight or will you be… busy?”

 

Pretty intelligent boyfriend McCree’s got, Gabe thinks. “Busy, if I have any say in it, but who knows.”

 

“Good luck,” Hanzo says as he pushes the car door shut.

 

Gabe smiles at him and nods, and they walk together back to the group. Amélie and Jack both look confused as to where he got a cake from, and McCree looks upset for all of a few seconds before Hanzo whispers an explanation in his ear.

 

“Well, we should get outta here,” McCree says, sliding his arm casually around Hanzo’s waist. “I have some movin’ to do myself. Call me later if you guys want to do anythin’ special.”

 

They say their goodbyes, and McCree and Hanzo get into their respective vehicles and drive off in the same direction through the parking lot. This leaves Amélie, Jack, and Gabe standing there in silence. It’s Gabe who breaks it. “Time for cake? Not my cake, obviously, because my cake is a burn victim, but store-bought cake.”

 

“I’m going to take a nap,” Amélie sighs. She turns around and walks off towards the apartment without another word, leaving Gabe and Jack staring after her.

 

“I’ll stay for cake,” Jack says, smiling. Gabe wonders if Jack has any idea the kind of weapon he possesses in that sunshine smile.

 

“Yeah? Don’t have somewhere else you’d rather be?”

 

“Not really.”

 

Well, Gabe isn’t going to argue with that. He carries the cake inside the apartment and sets it up on the island in the kitchen. Jack follows him inside and goes to stand in front of the stove as Gabe works on sliding the cake out of the box.

 

“So, uh. Is that the charred remains of my birthday cake?” Jack asks, clearly amused as he points at the cake pan sitting on the stovetop.

 

Gabe looks up and frowns. He should’ve thrown it out earlier, but he was too pissed off. “Yup, that’s it.”

 

“Should we say a few words?” Jack smiles and looks from the cake to Gabe. “Give it a proper burial?”

 

“I already said some choice words earlier when the stove was pouring smoke into my face. That’s probably all it deserves.” Gabe gestures to the drawer next to the stove. “I think Amélie keeps silverware in there. Grab two forks while I try to find where she keeps the plates.”

 

“Putting me to work on my birthday,” Jack sighs as he pulls open the drawer. “You’re as bad as Amélie.”

 

“Yeah well, at least I’m giving you cake.”

 

Jack laughs, and Gabe forgets for a minute what he’s supposed to be doing. Then, he goes to the cupboards and starts digging for plates. There’s nothing in most of them and nothing platelike in the rest. He did bring his own sad little set of seven bachelor plates (there were eight until one broke), but they’re packed super tight in bubble wrap and styrofoam in a box in his room.

 

Gabe gives up on looking and ends up just carrying the cake to the small kitchen table. Jack shoots him a curious glance and follows, two forks in hand.

 

“She doesn’t have any plates, so I’m claiming this cake just for us,” Gabe explains, setting his elbow on the table and holding his hand out for a fork.

 

Jack deposits one into his open palm. “Amélie won’t want any?”

 

“She doesn’t get any.” Gabe spears the fork in unrepentantly and comes out of it with a forkful of moist chocolate cake. He’s definitely not holding a grudge or anything about the burnt cake or the fucked up timer or the lack of wake up call, he tells himself. He’s not. “I’ll just tell her it’s a German Chocolate cake and she’ll gag and say she didn’t want any anyway.”

 

Jack takes the seat opposite Gabe’s at the table and picks up his own bite of chocolate cake. “I don’t think she meant to not wake you up. I really think she just forgot. We all kind of lost track of time.”

 

“Doesn’t make the betrayal sting any less,” Gabe replies around a mouthful. For a store-bought cake, this is actually pretty fucking good. Not anywhere close to his Guinness Cake, but it’ll do. Maybe there is something to those fancy grocery stores after all. “I’m sorry she made you help today. I’m sure there’s shit you’d rather be doing on your birthday.”

 

Jack gives him an amused look, one that disappears almost as fast as it appears. “I volunteered.”

 

“You don’t have to lie to me,” Gabe says, sticking another bite of cake into his mouth.

 

Jack shrugs, then takes his own bite and moans around it, making heat flood into Gabe’s face and across the back of his neck. It’s not his homemade cake that Jack is moaning about, but maybe he’ll get to cook for him another time.

 

They eat a few bites in silence, and if Jack notices that Gabe is stealing little glances at him, he doesn’t say anything about it.

 

“It was pretty nice of you to bake me a cake.”

 

Gabe swallows and shrugs his shoulders. “Good intentions, I guess. It’s a fucking shame that it burned.”

 

“Yeah,” Jack sighs. “I totally wanted to taste it.”

 

The way that Jack says it is almost certainly innocent, but Gabe’s brain twists it immediately into something definitely _not_. There’s nothing wrong with eating cake across from a solid 10 while sporting half an erection, he reasons. Jack is ridiculously attractive and it’s _been a while_. Like almost a year at this point.

 

He doesn’t even know if Jack is even interested, but judging from how oblivious he was with McCree’s attempts to pick him up, he doesn’t trust himself anymore to catch on.

 

“Gabe?”

 

Jack’s voice snaps him out of it. He looks up from the crater he’s made in the cake and finds Jack looking at him in a certain kind of way -- one that’s really hard to misunderstand. He has his index finger coated in chocolate frosting, and he raises it nonchalantly to his lips and sticks it right in his mouth, then sucks it clean and lets it go with a quiet _pop_.

 

“Did you get me anything else for my birthday?”

 

Gabe looks at him for a moment, leans back in his chair, then asks, “Are you propositioning me, Jack?”

 

“Yes.” Jack grins and swipes his finger again through a delicate swirl of chocolate on top of the cake. “Is it working?”

 

“That depends. What day is it?”

 

“Friday.”

 

Gabe points at him with the fork. “You’re in luck, Jackie. I only believe in no sex until marriage Monday through Thursday.”

 

Jack’s smile stretches into a grin, and he laughs. The sound of it is clear and deep and beautiful. Gabe wants to hear a lot more of that, he decides. A lot more. Whether he’s going to get the chance or not, he doesn’t know, but at least Jack is here now and he’s interested in… something. That’s a start.

 

Gabe forks one more bite of cake into his mouth, because he’s going to need the calories and it’s actually _really_ fucking good, and silently promises himself that he’ll hit the gym later tonight to burn it off. If he’s not occupied. Jack does the same, except he takes his piece with his fingers and eats it in a way that Gabe is pretty sure should be illegal.

 

Before he can lick his fingers clean, Gabe reaches across the small table and grabs his wrist. Jack watches him, eyes wide, as Gabe cleans them for him, slipping his index finger into his mouth and swirling his tongue around it, followed by his thumb. When he’s done, he lets go of Jack’s wrist, smirking a little. For added effect, he licks his lips.

 

Jack’s blue eyes are wide, lips parted, and his cheeks are definitely red. He still has his arm extended, so Gabe takes the opportunity and grabs his hand as he stands up from the table.

 

“Come on, birthday boy.”

 

\--

 

That first kiss as they step over the threshold into Gabe’s room is tentative, as they get to know each other. Just the barest brush of lips, at first, broken by Gabe shutting the door behind him and locking it for good measure. The last thing he wants is for Amélie to walk into his room while he’s getting laid. Again.

 

When he turns back towards Jack, he kisses him again, deeper this time, his hands finding the dip of Jack’s back. He slips them underneath his t-shirt, feeling warm skin under his palms as he walks Jack backwards towards the bed.

 

Right. The bed.

 

Gabe hasn’t had time to set up his bed frame, which becomes apparent as he goes to tip Jack back onto the bed and they tumble gracefully together onto the mattress that’s just… lying on the floor. Gabe curses and pushes himself up so he’s bracing himself on either side of Jack’s shoulders.

 

“Son of a bitch... knew I forgot something.”

 

Jack is laughing too hard beneath him to respond, so Gabe waits until he’s done, because he really likes the sound of Jack’s laugh. When he’s apparently finished, Jack smiles up at him, tears gathering in the corners of his eyes from laughing so hard. “I’ve had sex in worse places.”

 

Gabe smiles in return and presses a kiss to the corner of his mouth, working Jack’s t-shirt up with one hand. “College dorm room that wasn’t mine or hers.”

 

“Stock room at the bar. Got a splinter in my ass cheek.”

 

Jack arches his back and groans as Gabe pinches one nipple between his fingers. That reaction goes straight to Gabe’s cock, so he does it again, because he can. It pebbles almost immediately, and he leans down to capture it in his mouth, nipping at it and soothing over the hurt with his tongue.

 

The sound that Jack makes is low and desperate, and god it makes Gabe feel greedy.

 

“The garage because his parents were home,” Gabe mumbles as he switches over to mouth at the opposite side of Jack’s chest.

 

Jack pushes his fingers into Gabe’s hair, first brushing them through the long part on top and then against the bristly short hair of his undercut. “By the pool at a hotel in broad daylight, in one of those shitty folding lounge chairs.”

 

Gabe pulls Jack’s shirt up and over his head, revealing his the swell of his pecs and the taut stomach below that. There’s some dusky blonde hair on his chest and leading from his navel into the waistband of his pants. Gabe puts his mouth to it and follows it down, feeling the way Jack’s muscles tense and twitch beneath his lips. There are a couple moles and old scars, and Gabe pays special attention to those, smiling as Jack sighs and moans for him, because of him.

 

“Public park, got caught,” Gabe murmurs, nosing at the sensitive skin just above the waistband of Jack’s pants as he works the button free.

 

“A plastic tent at summer camp as a boy scout. Also got caught.”

 

“Alright, alright, you win.”

 

“Were we competing?” Jack asks, combing his fingers through Gabe’s hair.

 

Gabe doesn’t answer, just presses a kiss to Jack’s lower belly and pulls the zipper on his pants down. The generous bulge in his underwear greets him from between the open flaps, and Gabe mouths at Jack’s cock through the fabric as he hooks his fingers in the waistband and pulls his pants and boxers down slowly.

 

This has always been a favorite of his in bed, stuffing his mouth with his partner’s cock, and Jack certainly isn’t going to disappoint him. There’s plenty of it, thick and lengthy, and cut, which doesn’t surprise Gabe at all. It lies full and heavy against Jack’s lower belly, liquid glistening in the slit.

 

“Pretty here too, hm?” Gabe hums, reaching between them to rub his index finger through the clear precome beading at the tip.

 

Jack’s hips come up a little at the touch. He’s propped himself up on his elbow so he can see, which works just fine for Gabe. He knows what he looks like with a cock in his mouth.

 

Gently, Gabe circles his fingers around the length of it and wraps his lips around the head.

 

“ _Oh,_ Gabe.” Jack’s other hand is still on Gabe’s head, but he keeps his grip soft even as Gabe runs his tongue through the slit. _Good boy_ , he thinks, wondering briefly how Jack would respond if he said it out loud.

 

Gradually, Gabe takes more of Jack into his mouth, lips stretched wide as he bobs his head. That’s when the sounds really start to spill from those plush lips -- little panting moans to start, then louder ones as Gabe gets closer to the base. Eventually, he has to pin Jack’s hips with his forearm, because even if he’s not a hair puller, he’s definitely trying to thrust up into the wet heat of Gabe’s mouth. Might be something to try another time if there is one.

 

Jack isn’t enormous (and not bigger than Gabe although it’s a near thing), but he’s definitely big enough to make Gabe work to get the full thing all the way down, until he has his nose pressed to blond pubic hair and the head of Jack’s cock prodding at the back of his throat.

 

“Holy shit,” Jack gasps, fisting Gabe’s hair in his hand. He’s trembling, Gabe can feel it in his thighs and his lower belly, and maybe he wants to show off a little. He holds Jack there in his throat for a long time, swallowing rhythmically around him, and only pulls off when he starts to feel lightheaded.

 

“Living up to your expectations, birthday boy?” Gabe asks breathily, his voice raw and deep.

 

“You could say that,” Jack pants, grinning and scratching his nails against Gabe’s scalp. “If I knew you were this skilled, we could’ve skipped the cake altogether.”

 

Gabe smiles and takes Jack into his mouth again, sucking and bobbing his head up and down the entire length. He keeps his hand circled at the base, just shy of too tight. Jack doesn’t seem to care until he starts to get close to his orgasm. Then his hand slips down to claw at Gabe’s neck, his hips fighting the arm laying over them.

 

“Gabe, I’m--”

 

Nice of him to warn a guy, at least. Gabe keeps sucking hard until Jack’s body bows and his head falls back. As he starts to come, Gabe pulls off and works the length of Jack’s cock with his hand, spurts of come landing onto Jack’s stomach.

 

Gabe takes a second to appreciate the sight of Jack flushed and sweaty and panting with streaks of come painting his skin, committing it to memory just in case this is the only time he gets to see it.

 

“Normally I’d swallow, but we need this,” Gabe explains, repositioning himself so he’s straddling Jack’s hips. He pulls his shirt over his head and frees himself from his pants, settling them down just under his balls, and pushes his cock through the mess on Jack’s abs. The slick slide of it is perfect, even without any tight grip around him, and Gabe exhales heavily. He’s so hard it hurts.

 

“Really?” Jack asks, sounding pretty fucked out, but also a little judgmental.

 

“Hey, you had sex at summer camp, boy scout,” Gabe says good-naturedly, leaning down to press their foreheads together. “Don’t judge me.”

 

“M’not judging you,” Jack mumbles, and Gabe realizes that then it’s not judgment, but disappointment.

 

“Mmm, did birthday boy want to fuck me? Or maybe get fucked by me?”

 

Jack holds onto Gabe’s back, pulling him closer so Gabe’s cock is essentially trapped between their stomachs. “Don’t tease me.”

 

“How about I kiss you instead?” Gabe asks, and takes Jack’s sigh and the sharp digging of his nails into Gabe’s back as a yes. He presses their lips together, immediately parting Jack’s with his tongue and licking into his mouth. Gradually, he picks up a rhythm with his hips, pushing through the wet, sticky mess on Jack’s skin.

 

Now that the image of him fucking Jack or vice versa is planted in his brain, it’s pretty much all Gabe can think about as he thrusts his cock between them. He just doesn’t have the supplies on hand -- like an asshole who didn’t expect to get laid, he’d tossed his bottle of lube into a box and whatever condoms he has left, if any, are most definitely past the expiration date. Not that he thinks he’s going to last long enough for that anyways.

 

Not with Jack whispering a steady stream of filth in between kisses and dragging his nails down Gabe’s shoulder blades, leaving the kind of marks that he’s going to feel tomorrow. He’s been close to coming for a while, and there’s no chance he’s going to be able to hold back.

 

“Next time, Jackie,” he promises, feeling the heat of his orgasm building low in his gut.

 

Jack nips at Gabe’s bottom lip and exhales shakily. “Next time.”

 

Whether Jack is serious or not, it doesn’t matter to Gabe. His hips twitch and his balls draw up tight, and then he’s coming, spilling hot and wet between them. He rides it out with little spasms of his hips, and it probably doesn’t escape Jack’s notice that it’s his name on Gabe’s lips.

 

Once he’s empty, Gabe kisses Jack again, slow and soft. The way Jack kisses him back, like he’s just happy to lie there and kiss for as long as Gabe wants, makes his chest feel tight.

 

Eventually, they break apart. Jack smiles up at him and says, “I don’t want to ruin a moment, but there’s come all over me and it’s getting cold and tacky.”

 

“You’re telling me this isn’t the most romantic aftermath you’ve ever had?” Gabe asks, rolling off the mattress carefully. He stands up and offers his hand to Jack, who takes it and allows him to assist in pulling him to his feet.

 

Jack grins at him. “I didn’t say it wasn’t romantic, I just said it was sticky.”

 

“Bathroom is through there,” Gabe says, pointing towards the door. “I don’t think she’s used it since she moved in, so it’s probably dusty, but clean.”

 

Jack disappears into the bathroom and surprisingly doesn’t close the door completely behind him. Gabe can hear the sound of running water from behind the cracked door. While Jack is busy cleaning up, Gabe does the same. He has a mess on his stomach as well, not as much as Jack’s, but definitely sticky and noticeable.

 

He digs a towel out of a box and uses it to clean himself off. While he’s at it, he digs out some clean clothes, including a soft pair of sweatpants he’s had since freshman year of college and a t-shirt that’s just shy of being too tight on him. He’s slipping on the shirt when Jack emerges from the bathroom.

 

Gabe stares openly. Jack leans against the doorframe and grins at him. “See something you like?”

 

“Yeah. Yeah, I do,” Gabe sighs wistfully. “Did you want to go out tonight with McCree and Hanzo?”

 

“Not really.”

 

“You got other plans?”

 

Jack smiles enigmatically. “Nope.”

 

“Okay. Stay. Let me make you a birthday dinner.”

 

“Amélie has stuff in her fridge for that?” Jack asks with a tilt of his head.

 

"Fuck me," Gabe groans. He forgot he’s living with the takeout queen now. “Let me take you out for a birthday dinner.”

 

“I’d like that. But uh, we did this kind of backwards, huh?”

 

Jack is looking at him in some kind of way, one that feels warm and fond. Gabe can’t help but smile.

 

“I’m not going to complain if you’re not.”

 

\--

 

[[The text conversation that happened when Gabe and Amélie were drinking bottomless margaritas...]]

 

Amélie - Hey. I need you to take my shift at the bar on Friday. My friend is moving in with me.

 

Jack - Sure thing. It’s my birthday, but I’m just gonna be alone anyways.

 

Amélie - Oh?

 

Jack - Yep. Unless you can think of someone equally lonely who’d want to spend my birthday with me I’d rather work it tbh

 

Amélie - Well…

 

<IMG_2056.jpg>

 

Jack - Oh he’s cute. Sign me up.

**Author's Note:**

> If you liked this and want to see more, tell me nice things. <3 It's a super easy way to motivate writers to produce more content. ;)
> 
> I'm Dormchi on Twitter as well! Tumblr can eat my shorts.


End file.
